#ifndef __TEXTURE_H__
#define __TEXTURE_H__

#include "glad/glad.h"

#define DEFAULT_FILTER -1

class Texture
{
public:
    Texture() = default;
    int load_img(const char *img_name, unsigned int dim);
    int id() const;
    void setWrap(unsigned int wrap_X = GL_REPEAT, unsigned int wrap_Y = GL_REPEAT, unsigned int wrap_Z = GL_REPEAT);
    void setborderColor(float *borderColor);
    void setfliter(unsigned int min_filter, unsigned int mag_filter);
    void bind(unsigned int texID) const;

private:
    unsigned int ID;
    GLenum dim;
};
#endif